/**
 * 1025. 除数博弈
 * https://leetcode-cn.com/problems/divisor-game/
 */
public class Solutions_1025 {
    public static void main(String[] args) {
        int N = 2;  // output: true
//        int N = 3;  // output: false

        boolean result = divisorGame(N);
        System.out.println(result);
    }

    /**
     * 数字   Alice  Bob    注意：总是 Alice 先手，取值要满足 0 < x < N，且 x 是 N 的因数
     *  1    lose   win    无法取值，Alice 败
     *  2    win    lose   Alice 只能取 1，取 1 后，数字为 2 - 1 = 1，根据数字 1 得到的结论，谁拿 1 谁败
     *  3    lose   win    Alice 只能取 1，取 1 后，数字为 3 - 1 = 2，根据数字 2 得到的结论，谁拿 2 谁胜
     *  4    win    lose   Alice 可取 1 或 2（都是聪明人，所以 Alice 会先 1，让 Bob 败）
     *                         取 1 后，数字为 4 - 1 = 3，根据数字 3 得到的结论，谁拿 3 谁败
     *                         取 2 后，数字为 4 - 2 = 2，根据数字 2 得到的结论，谁拿 2 谁胜
     *  5    lose   win    Alice 只能取 1，取 1 后，数字为 5 - 1 = 4，根据数字 4 得到的结论，谁拿 4 谁胜
     *  6    win    lose   Alice 可取 1 或 3
     *                         取 1 后，数字为 6 - 1 = 5，根据数字 5 得到的结论，谁拿 5 谁败（先手的情况）
     *                         取 3 后，数字为 6 - 3 = 3，根据数字 3 得到的结论，谁拿 3 谁败（先手的情况）
     * ...
     * 规律：Alice 先手的情况下，数字为偶数时，Alice 可以完胜
     */
    public static boolean divisorGame(int N) {
        return N % 2 == 0;
    }
}
